Career 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Porto Challenger Prague 3 Challenger Davis Cup, Group I, 1R, AUT-POR 1-3 Lisbon Challenger Oeiras 1 Challenger Spain F5 Spain F28 Spain F29 Spain F30 Spain F5 Spain F8 Spain F9 Spain F17 Spain F18 Spain F20 Spain F21 Spain F23 Spain F24 Spain F29 Spain F30 Spain F31 Spain F1 Spain F2 Spain F6 Spain F7 Spain #1-w1 Spain #1-w2 Spain #1-w3 Spain #1-w4 Spain F8 Spain F9 Spain F10 Spain F12 Spain F13 Spain F14 Spain F15 Spain F16 Spain F21 Spain F22 Spain F23 Spain F24 Spain F25 Spain F26 Spain F28 Spain F35 Spain F36 Spain F1 Spain F2 Spain F3 Spain F6 Spain F7 Spain F8 Spain F9 Spain F10 Spain F11 Spain F14 Spain F15 Spain F16 Spain F17 Spain F18 Spain F19 Spain F21 Spain F22 Spain F23 Spain F25 Spain F26 Spain F27 Spain F33 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F3 Spain F18 Spain F34 Spain F39 Spain F21 France F12 Spain F16 Spain F20 Spain F6 Croatia F6 Spain F6 Spain F15 Turkey F48 Nigeria F3 Croatia F1 (Rovinj) Croatia F2 (Porec) Croatia F4 (Opatija) Spain F41 Pakistan F1 (Islamabad) Pakistan F2 (Islamabad) Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F12 M15 Manama Spain F13 Spain F17 Spain F19 Spain F20 Romania F10 Romania F11 Spain F30 Spain F31 Spain F33 Portugal F7 Portugal F8 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F10 Spain F11 Turkey F4 Turkey F5 Turkey F6 Spain F16 Spain F17 Spain F18 Spain F20 Spain F28 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 Spain F4 Italy F2 Italy F3 Spain F17 Spain F18 Spain F19 Italy F17 Spain F31 Spain F35 Spain F36 France F4 Spain F14 Spain F15 Spain F36 Spain F37 Spain F38 X Ciutat de Barcelona - Barcelona ATP Slovak Open Challenger - Bratislava Bulgarian Open Challenger - Sofia Ipsos Bucharest Challenger - Bucharest IV Challenger Ciudad De Guayaquil - Guayaquil Seville Challenger Tanger Challenger Rabat Challenger Tallahassee Challenger Tunis Challenger Turin Challenger San Benedetto Challenger Kosice Challenger Milan Challenger San Benedetto Challenger San Marino Challenger Quimper Challenger Casablanca Challenger Kosice Challenger Tampere Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Santiago Challenger Samarkand Challenger Prague Challenger Todi Challenger Meerbusch Challenger Szczecin Challenger Montevideo Challenger Bogota Challenger Lima Challenger Meknes Challenger Noumea Challenger Bucaramanga Challenger Panama City Challenger Barranquilla Challenger Mersin Challenger Arad Challenger Caltanissetta Challenger Milan Challenger Brasov Challenger Trnava Challenger Sibiu Challenger Rennes Challenger Mouilleron-Le-Captif Challenger Guayaquil Challenger Vicenza Challenger Mestre Challenger Prague Challenger Braunschweig Challenger Poznan Challenger Prague Challenger Meerbusch Challenger Manerbio Challenger Seville Challenger Sibiu Challenger Rome Challenger Casablanca Challenger Montevideo Challenger Vicenza Challenger Moscow Challenger Poznan Challenger Suzhou Challenger Tanger Challenger Napoli Challenger Ostrava Challenger Asuncion Challenger Cassis Challenger Biel Challenger Orleans Challenger Seville Challenger Brest Challenger Challenger Copa Sevilla - Seville Tenerife Challenger Bratislava Challenger Como Challenger Helsinki Challenger Challenger Ciudad de Guayaquil - Guayaquil Bancolombia Open - Cali Vigo Challenger Quimper Challenger Croatia F1 (Rovinj) Meknes Challenger Buenos Aires Challenger Trnava Challenger Open Tarragona Costa Daurada - Tarragona Orbetello Challenger Poprad Tatry Challenger Guangzhou Challenger Barletta Challenger Barletta Challenger Marburg Challenger Ostrava Challenger Madrid Challenger Montevideo Challenger Bordeaux Challenger Athens Challenger Reunion Island Challenger Santo Domingo Challenger Bytom Challenger Quimper Challenger Cremona Challenger Alphen Challenger Open Costa Daurada - Tarragona Arad Challenger Furth Challenger Polska Energia Open - Bytom Qingdao Challenger Curitiba Challenger Ningboo Challenger Poznan Challenger Orbetello Challenger Brasov Challenger Aix En Provence Challenger Ismaning Challenger Drummondville Challenger Oeiras 2 Challenger Vicenza Challenger Tunis Challenger Copa Sevilla-Internacionales de Andalucia - Seville Trofeo Internacional Club Laieta - Barcelona Mallorca Challenger Cassis Challenger Croatia Open - Umag Open 13 - Marseille Open de Tenis Comunidad Valenciana - Valencia Estoril Open - Estoril Austrian Open - Kitzbuhel Medibank International - Sydney Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Masters Series - Hamburg Concurso Internacional de Vigo - Vigo BCR Open Romania - Bucharest Open Sabadell Atlantico - Barcelona Estoril Open - Estoril AEGON Championships - London Catella Swedish Open - Bastad International German Open - Hamburg Open Costa Daurada - Tarragona Ciutat de Barcelona - Barcelona Allianz Suisse Open Gstaad - Gstaad BCR Open Romania - Bucharest If Stockholm Open - Stockholm Scheveningen Challenger Unicredit (Suisse) Bank S.A. Challenger - Chiasso Open Sud de France - Montpellier Bank Austria Tennis Trophy - Vienna Cortina Challenger Girona Challenger Grand Prix Hassan II - Casablanca Banja Luka Challenger 9° Trani Cup - Trani Estoril Open - Estoril Open de Nice Cote d'Azur - Nice LXVII Concursu Internacional de Vigo - Vigo German Tennis Championships - Hamburg BCR Open Romania - Bucharest Kremlin Cup - Moscow Geneva Challenger - Geneva Aircel Chennai Open - Chennai VTR Open - Vina del Mar Brasil Open - Sao Paulo Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Studena Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Pekao Open - Szczecin Ipsos Bucharest Challenger - Bucharest Aircel Chennai Open - Chennai Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Portugal Open - Oeiras Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Open Sud de France - Montpellier Royal Guard Open Chile - Vina del Mar Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Copa Petrobras Uruguay - Montevideo Brasil Open - Sao Paulo Grand Prix Hassan II - Casablanca BRD Nastase Tiriac Trophy - Bucharest Portugal Open - Oeiras Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag Bet-at-home Cup - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing Valencia Open - Valencia Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch Aegon Nottingham Open - Nottingham Claro Open Colombia - Bogota Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia St. Petersburg Open - St. Petersburg ASB Classic - Auckland Rio De Janeiro Challenger Morocco Tennis Tour - Meknes Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo European Open - Antwerp Erste Bank Open - Vienna ASB Classic - Auckland Mamaia Challenger - Constanta Zagreb Open - Zagreb Brasil Open - Sao Paulo Trofeo Cassa di Risparmio di Alessandria - Alessandria Copa Sevilla 2007 - Seville Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Geneva Open - Geneva Suisse Open - Gstaad Open Diputacion Ciudad de Pozoblanco - Cordoba Generali Open - Kitzbuhel St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen European Open - Antwerp Swiss Indoors Basel - Basel ASB Classic - Auckland Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam San Benedetto Challenger - San Benedetto Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Gerry Weber Open - Halle Antalya Cup - Antalya KGHM Dialog Polish Indoors - Wroclaw Plava Laguna Croatia Open - Umag Internazionali di Tennis di Bergamo - Bergamo St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Swiss Indoors Basel - Basel Medjurgorje Open - Medjugorje ASB Classic - Auckland Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Kos Succhetti Tennis Cup - Cordenons Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Morocco Tennis Tour - Tanger Swiss Indoors Basel - Basel Open Sud de France - Montpellier European Open - Antwerp Hamburg European Open - Hamburg Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Millennium Estoril Open - Estoril LXVII Concurso Internacional de Tenis Cidade de Vigo - Vigo Sardegna Open - Cagliari Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune 84° Concurso Internacional Tenis San Sebastian - San Sebastian Grand Prix Hassan II - Marrakech Citta di Como Challenger - Como Serbia Open - Belgrade III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Gonet Geneva Open - Geneva TEAN International - Alphen Aan Den Rijn Swiss Open - Gstaad Moselle Open - Metz Challenger Copa Sevilla 2008 - Seville Calgary Challenger Stockholm Open - Stockholm Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon Copa Petrobras-Uruguay - Montevideo ASB Classic - Auckland Cordoba Open - Cordoba Rio Open - Rio de Janeiro XXXV Edizione A Savoldi-Marco Co. Trofeo Dimmidisi - Manerbio Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Rabat Challenger Millennium Estoril Open - Estoril San Remo Challenger Copa Petrobras-Argentina - Buenos Aires Karlsruhe Challenger Furth Challenger Lugano Challenger Reggio Emilia Challenger Shanghai Rolex Masters - Shanghai San Marino Challenger Trani Challenger Manerbio Challenger Brasov Challenger Marrakech Challenger Banja Luka Challenger Napoli Challenger Tarragona Challenger Rennes Challenger Zagreb Challenger Florionapolis Challenger Medellin Challenger Cancun Challenger Puebla Challenger Turin Challenger Sao Paulo Challenger Bucaramanga Challenger Caltanissetta Challenger Monza Challenger Reggio Emilia Challenger Recanati Challenger Tampere Challenger San Marino Challenger Istanbul Challenger San Sebastian Challenger Manerbio Challenger Seville Challenger Banja Luka Challenger Izmir Challenger Salzburg Challenger Tarragona Challenger Marrakech Challenger Leon Challenger Cancun Challenger Heilbronn Challenger Courmayeur Challenger Oeiras 3 Challenger Casablanca Challenger Pingguo Challenger Barletta Challenger St. Brieuc Challenger Santiago Challenger Rome Challenger Furth Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Sao Paulo Challenger Segovia Challenger San Sebastian Challenger Seville Challenger Szczecin Challenger Banja Luka Challenger Trnava Challenger Madrid Challenger Palermo Challenger Eckental Challenger Kazan Challenger Bergamo Challenger Meknes Challenger Rabat Challenger Marrakech Challenger Barletta Challenger Mersin Challenger Rome Challenger Bordeaux Challenger Internazionali BNL dItalia - Rome Furth Challenger Internazionali BNL dItalia - Rome Mutua Madrilena Masters Madrid - Madrid Milan Challenger Tallahassee Challenger BNP Paribas Open - Indian Wells Sony Ericsson Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrilena Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Sibiu Challenger BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Cordenons Challenger Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Salinas Challenger Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Kosice Challenger San Benedetto Challenger Internazionali BNL d'Italia - Rome Guimaraes Challenger Liberec Challenger Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Bratislava 2 Challenger Szczecin Challenger Ortisei Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Bucaramanga Challenger Rogers Cup - Toronto Scheveningen Challenger Chengdu Challenger Alphen Challenger Mouilleron-Le-Captif Challenger Andria Challenger Montevideo Challenger Rome Challenger Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Sarasota Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Murcia Challenger Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Antalya 2 Challenger Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Mallorca Challenger Alicante Challenger BNP Paribas Masters - Paris Swiss Open - Gstaad BNP Paribas Open - Indian Wells Phoenix Challenger Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Ecuador Open - Quito Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Movistar Open - Santiago Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Brasil Open - Costa do Sauipe Girona Challenger Pilot Pen Tennis - New Haven Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Internazionali BNL d'Italia - Rome Heineken Open - Auckland Western & Southern Open - New York Power Horse Cup - Dusseldorf BNP Paribas Open - Indian Wells Open 13 - Marseille Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Bet-At-Home Austrian Open - Kitzbuhel Generali Open - Kitzbuhel BNP Paribas Open - Indian Wells Serbia Open - Belgrade Winston-Salem Open - Winston-Salem Mercedes Cup - Stuttgart Miami Open - Miami Rakuten Japan Open - Tokyo Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid If Stockholm Open - Stockholm Internazionali BNL d'Italia - Rome National Bank Open - Montreal Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Maia Challenger Open de Tenis Comunidad Valenciana - Valencia Valencia Open - Valencia Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Mercedes Cup - Stuttgart Nordea Open - Bastad SkiStar Swedish Open - Bastad Millennium Estoril Open - Estoril Open SEAT 2008 - Barcelona ABN AMRO World Tennis Tournament - Rotterdam BMW Open - Munich Konzum Croatia Open - Umag Qatar ExxonMobil Open - Doha Open Sabadell Atlantico - Barcelona Gerry Weber Open - Halle St. Petersburg Open - St. Petersburg Heineken Open - Auckland Copa Claro - Buenos Aires Generali Open - Kitzbuhel Apia International - Sydney Barcelona Open BancSabadell - Barcelona Heineken Open - Auckland Winston-Salem Open - Winston-Salem Millennium Estoril Open - Estoril Open 13 - Marseille Grand Prix Hassan II - Marrakech Winston-Salem Open - Winston-Salem Barcelona Open BancSabadell - Barcelona Abierto Mexicano Telcel - Acapulco Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Libema Open - 's-Hertogenbosch ASB Classic - Auckland Gerry Weber Open - Halle Antalya Cup - Antalya Open Parc - Lyon Noventi Open - Halle Mallorca Championships - Mallorca Winston-Salem Open - Winston-Salem Erste Bank Open - Vienna AEGON Championships - London Cordoba Open - Cordoba Barcelona Open BancSabadell - Barcelona Gerry Weber Open - Halle Qatar ExxonMobil Open - Doha Miami Open - Miami Dubai Duty Free Tennis Championships - Dubai Argentina Open - Buenos Aires Hall of Fame Open - Newport Millennium Estoril Open - Estoril Noventi Open - Halle Mallorca Championships - Mallorca Mutua Madrid Open - Madrid Qatar ExxonMobil Open - Doha Internazionali BNL d'Italia - Rome Argentina Open - Buenos Aires China Open - Beijing Rogers Cup - Toronto French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Monte-Carlo Rolex Masters - Monte-Carlo French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne U.S. Open - New York French Open - Paris Wimbledon - London Australian Open - Melbourne U.S. Open - New York French Open - Paris French Open - Paris U.S. Open - New York Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne Wimbledon - London Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, ROU-POR 3-1 French Open (juniors) All Lower level tournaments Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Olympics - Rio de Janeiro Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, Group I, PO, POR-RSA 4-0 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 Davis Cup, World Group, PO, POR-CZE 1-3 Davis Cup, World Group, Q, FIN-POR 3-1 Olympics - Tokyo Braga Challenger